home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2001 May / SGI IRIX Base Documentation 2001 May.iso / usr / share / catman / p_man / cat2 / standard / syssgi.z / syssgi
Encoding:
Text File  |  2001-04-17  |  52.4 KB  |  793 lines

  1.  
  2.  
  3.  
  4. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      syssgi - Silicon Graphics Inc. system call
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      ####iiiinnnncccclllluuuuddddeeee <<<<ssssyyyyssss////ssssyyyyssssssssggggiiii....hhhh>>>>
  13.  
  14.      ppppttttrrrrddddiiiiffffffff____tttt ssssyyyyssssssssggggiiii ((((iiiinnnntttt rrrreeeeqqqquuuueeeesssstttt,,,, ............))));;;;
  15.  
  16. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  17.      _s_y_s_s_g_i is a system interface specific to Silicon Graphics systems.  The
  18.      value of the _r_e_q_u_e_s_t parameter determines the meaning of the remaining
  19.      arguments.  In the descriptions below, _a_r_g_1, _a_r_g_2, and _a_r_g_3 refer to
  20.      parameters following the _r_e_q_u_e_s_t argument.  The following requests are
  21.      currently supported:
  22.  
  23.      SSSSGGGGIIII____SSSSYYYYSSSSIIIIDDDD   Returns an identifier for the given system.  This identifier
  24.                  is guaranteed to be unique within the Silicon Graphics
  25.                  product family.  The argument _a_r_g_1 for this _r_e_q_u_e_s_t should be
  26.                  a pointer to a character buffer of MMMMAAAAXXXXSSSSYYYYSSSSIIIIDDDDSSSSIIIIZZZZEEEE characters.
  27.  
  28.      SSSSGGGGIIII____RRRRDDDDNNNNAAAAMMMMEEEE  Returns the process name for the process id specified in
  29.                  _a_r_g_1.  The arguments _a_r_g_2 and _a_r_g_3 give the address and
  30.                  length, respectively, of the buffer which will receive the
  31.                  name string.  This name corresponds to the name in the
  32.                  _CCCC_OOOO_MMMM_MMMM_AAAA_NNNN_DDDD column of _p_s(1) for the given process.  The returned
  33.                  string will be null-terminated unless the caller's buffer is
  34.                  too small, in which case the string is simply truncated at
  35.                  the size of the buffer.  The return value gives the number of
  36.                  bytes copied to the buffer, which will be the minimum of the
  37.                  size of the buffer and the size of the field in the user
  38.                  structure that contains the process name.  Note that this
  39.                  means that the returned length will typically be greater than
  40.                  the actual length of the name string (in the sense of
  41.                  _s_t_r_l_e_n(3)).
  42.  
  43.      SSSSGGGGIIII____RRRRDDDDUUUUBBBBLLLLKKKK  Was an obsolete feature and has been discontinued.  Users are
  44.                  directed to the process filesystem (see _p_r_o_c(4).) to obtain
  45.                  information about a process.
  46.  
  47.      SSSSGGGGIIII____PPPPRRRROOOOCCCCSSSSZZZZ  Was an obsolete feature and has been discontinued.  Users are
  48.                  directed to the process filesystem (see _p_r_o_c(4).) to obtain
  49.                  information about a process.
  50.  
  51.      SSSSGGGGIIII____TTTTUUUUNNNNEEEE    This request allows the superuser to redefine tunable
  52.                  variables to more accurately reflect system use.  The
  53.                  argument _a_r_g_1 is a buffer pointer which specifies a group
  54.                  name of the tunable variable.  The argument _a_r_g_2 is a buffer
  55.                  pointer which holds the address of the tunable variable.
  56.                  _a_r_g_3 should be a buffer containing the tune value.
  57.                  _s_y_s_t_u_n_e(1M) is the preferred way to change these variables.
  58.                  This system call is only supported for 64 bit programs when
  59.                  running on 64 bit kernels.
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  71.  
  72.  
  73.  
  74.      SSSSGGGGIIII____IIIIDDDDBBBBGGGG    Used internally for kernel debugging.
  75.  
  76.      SSSSGGGGIIII____IIIINNNNVVVVEEEENNNNTTTT  Returns information about the hardware inventory of the
  77.                  system.  If _a_r_g_1 is SSSSGGGGIIII____IIIINNNNVVVV____SSSSIIIIZZZZEEEEOOOOFFFF then the size of an
  78.                  individual inventory item is returned.  If _a_r_g_1 is
  79.                  SSSSGGGGIIII____IIIINNNNVVVV____RRRREEEEAAAADDDD then _a_r_g_3 bytes worth of inventory records are
  80.                  read into the buffer specified by _a_r_g_2.  Applications should
  81.                  use _g_e_t_i_n_v_e_n_t(3) to access this information; this internal
  82.                  interface may change.
  83.  
  84.      SSSSGGGGIIII____SSSSEEEETTTTLLLLEEEEDDDD  If _a_r_g_1 is 1, turn on an LED on the machine.  0 turns it off.
  85.                  This is only available on some SGI computers.
  86.  
  87.      SSSSGGGGIIII____SSSSEEEETTTTNNNNVVVVRRRRAAAAMMMM
  88.                  Sets nvram variable with given value.  Nvram variables are
  89.                  subset of IRIS PROM Monitor environment variables, which are
  90.                  saved in EEPROM, and the values of which are preserved over
  91.                  power cycle.  _a_r_g_1 is a buffer pointer which specifies a name
  92.                  of nvram variable.  _a_r_g_2 is a buffer pointer which holds the
  93.                  value of the nvram variable.  Both buffers pointed by _a_r_g_1
  94.                  and _a_r_g_2 must be at least 128 bytes long.
  95.  
  96.      SSSSGGGGIIII____GGGGEEEETTTTNNNNVVVVRRRRAAAAMMMM
  97.                  Retrieve values of the IRIS PROM Monitor environment
  98.                  variables.  (see _s_g_i_k_o_p_t(2)).  _a_r_g_1 is a buffer pointer which
  99.                  specifies either name or index of a IRIS PROM Monitor
  100.                  variable.  Both name and index must be ASCII string.  _a_r_g_2 is
  101.                  a buffer pointer in which the value be returned.  Both
  102.                  buffers pointed by _a_r_g_1 and _a_r_g_2 should be at least 128 bytes
  103.                  long.
  104.  
  105.      SSSSGGGGIIII____SSSSEEEETTTTSSSSIIIIDDDD
  106.      SSSSGGGGIIII____SSSSEEEETTTTPPPPGGGGIIIIDDDD
  107.      SSSSGGGGIIII____SSSSYYYYSSSSCCCCOOOONNNNFFFF
  108.      SSSSGGGGIIII____PPPPAAAATTTTHHHHCCCCOOOONNNNFFFF
  109.      SSSSGGGGIIII____SSSSEEEETTTTGGGGRRRROOOOUUUUPPPPSSSS
  110.      SSSSGGGGIIII____GGGGEEEETTTTGGGGRRRROOOOUUUUPPPPSSSS
  111.      SSSSGGGGIIII____SSSSEEEETTTTTTTTIIIIMMMMEEEEOOOOFFFFDDDDAAAAYYYY
  112.      SSSSGGGGIIII____SSSSPPPPRRRROOOOFFFFIIIILLLL
  113.      SSSSGGGGIIII____RRRRUUUUSSSSAAAAGGGGEEEE
  114.      SSSSGGGGIIII____SSSSIIIIGGGGSSSSTTTTAAAACCCCKKKK
  115.      SSSSGGGGIIII____NNNNEEEETTTTPPPPRRRROOOOCCCC
  116.      SSSSGGGGIIII____NNNNFFFFSSSSCCCCNNNNVVVVTTTT
  117.      SSSSGGGGIIII____GGGGEEEETTTTPPPPGGGGIIIIDDDD
  118.      SSSSGGGGIIII____GGGGEEEETTTTSSSSIIIIDDDD
  119.      SSSSGGGGIIII____MMMMPPPPCCCCWWWWAAAARRRROOOOFFFFFFFF
  120.      SSSSGGGGIIII____SSSSPPPPIIIIPPPPEEEE
  121.      SSSSGGGGIIII____FFFFDDDDHHHHIIII
  122.      SSSSGGGGIIII____CCCCRRRREEEEAAAATTTTEEEE____UUUUUUUUIIIIDDDD
  123.      SSSSGGGGIIII____GGGGEEEETTTTAAAASSSSHHHH
  124.      SSSSGGGGIIII____SSSSEEEETTTTAAAASSSSHHHH
  125.      SSSSGGGGIIII____GGGGEEEETTTTPPPPRRRRIIIIDDDD
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  137.  
  138.  
  139.  
  140.      SSSSGGGGIIII____GGGGEEEETTTTDDDDFFFFLLLLTTTTPPPPRRRRIIIIDDDD
  141.      SSSSGGGGIIII____SSSSEEEETTTTPPPPRRRRIIIIDDDD
  142.      SSSSGGGGIIII____GGGGEEEETTTTSSSSPPPPIIIINNNNFFFFOOOO
  143.      SSSSGGGGIIII____SSSSEEEETTTTSSSSPPPPIIIINNNNFFFFOOOO
  144.      SSSSGGGGIIII____AAAARRRRSSSSEEEESSSSSSSS____CCCCTTTTLLLL
  145.      SSSSGGGGIIII____AAAARRRRSSSSEEEESSSSSSSS____OOOOPPPP
  146.      SSSSGGGGIIII____GGGGEEEETTTTJJJJUUUUSSSSAAAAGGGGEEEE
  147.      SSSSGGGGIIII____SSSSEEEETTTTJJJJUUUUSSSSAAAAGGGGEEEE
  148.      SSSSGGGGIIII____GGGGEEEETTTTJJJJLLLLIIIIMMMMIIIITTTT
  149.      SSSSGGGGIIII____SSSSEEEETTTTJJJJLLLLIIIIMMMMIIIITTTT
  150.      SSSSGGGGIIII____GGGGEEEETTTTJJJJIIIIDDDD
  151.      SSSSGGGGIIII____KKKKIIIILLLLLLLLJJJJOOOOBBBB
  152.      SSSSGGGGIIII____MMMMAAAAKKKKEEEENNNNEEEEWWWWJJJJOOOOBBBB
  153.      SSSSGGGGIIII____SSSSEEEETTTTWWWWAAAAIIIITTTTJJJJOOOOBBBBPPPPIIIIDDDD
  154.      SSSSGGGGIIII____WWWWAAAAIIIITTTTJJJJOOOOBBBB
  155.      SSSSGGGGIIII____NNNNEEEEWWWWAAAARRRRRRRRAAAAYYYYSSSSEEEESSSSSSSS
  156.                  These are all interfaces that are used to implement various
  157.                  _l_i_b_c functions.  These are all subject to change and should
  158.                  not be called directly by applications.
  159.  
  160.      SSSSGGGGIIII____GGGGEEEETTTTPPPPLLLLAAAABBBBEEEELLLL
  161.      SSSSGGGGIIII____SSSSEEEETTTTPPPPLLLLAAAABBBBEEEELLLL
  162.      SSSSGGGGIIII____GGGGEEEETTTTLLLLAAAABBBBEEEELLLL
  163.      SSSSGGGGIIII____SSSSEEEETTTTLLLLAAAABBBBEEEELLLL
  164.      SSSSGGGGIIII____SSSSAAAATTTTRRRREEEEAAAADDDD
  165.      SSSSGGGGIIII____SSSSAAAATTTTWWWWRRRRIIIITTTTEEEE
  166.      SSSSGGGGIIII____SSSSAAAATTTTCCCCTTTTLLLL
  167.      SSSSGGGGIIII____LLLLOOOOAAAADDDDAAAATTTTTTTTRRRR
  168.      SSSSGGGGIIII____UUUUNNNNLLLLOOOOAAAADDDDAAAATTTTTTTTRRRR
  169.      SSSSGGGGIIII____RRRREEEECCCCVVVVLLLLUUUUMMMMSSSSGGGG
  170.      SSSSGGGGIIII____PPPPLLLLAAAANNNNGGGGMMMMOOOOUUUUNNNNTTTT
  171.      SSSSGGGGIIII____GGGGEEEETTTTPPPPSSSSOOOOAAAACCCCLLLL
  172.      SSSSGGGGIIII____SSSSEEEETTTTPPPPSSSSOOOOAAAACCCCLLLL
  173.                  These are all interfaces that are used to implement various
  174.                  _l_i_b_c and _l_i_b_n_s_l (enhanced security) functions.  These are all
  175.                  subject to change and should not be called directly by
  176.                  applications.
  177.  
  178.      SSSSGGGGIIII____RRRREEEEAAAADDDDBBBB
  179.      SSSSGGGGIIII____WWWWRRRRIIIITTTTEEEEBBBB  These are used to read and write character special devices
  180.                  that are greater than 2Gb.  _a_r_g_1 is the file descriptor
  181.                  pointing to a character special device.  _a_r_g_2 is a buffer in
  182.                  the user's space where the data will be transferred from or
  183.                  to.  _a_r_g_3 is the block (512 bytes) offset of where to start
  184.                  the transaction.  _a_r_g_4 is the number of blocks to transfer.
  185.                  This interface is superseded in IRIX Release 5.3 by the use
  186.                  of _l_s_e_e_k_6_4, which provides 64-bit seek offsets.
  187.  
  188.      SSSSGGGGIIII____SSSSSSSSYYYYNNNNCCCC   Synchronously flush out all delayed write buffers.
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  203.  
  204.  
  205.  
  206.      SSSSGGGGIIII____BBBBDDDDFFFFLLLLUUUUSSSSHHHHCCCCNNNNTTTT
  207.                  Allows the calling process to delay the kernel from writing
  208.                  out delayed write buffers by _a_r_g_1 seconds.  After that, the
  209.                  normal flush delay will apply.  At the end of the system
  210.                  call, the kernel will return the old flush delay.  This
  211.                  system call is intended to be used in conjunction with the
  212.                  SSSSGGGGIIII____SSSSSSSSYYYYNNNNCCCC system call on a single processor machine to
  213.                  provide the calling process with an environment that is free
  214.                  of any unwanted disk activities for the period of _a_r_g_1
  215.                  seconds.
  216.  
  217.      SSSSGGGGIIII____QQQQUUUUEEEERRRRYYYY____FFFFTTTTIIIIMMMMEEEERRRR
  218.                  Used by _f_t_i_m_e_r(1).
  219.  
  220.      SSSSGGGGIIII____CCCCYYYYCCCCLLLLEEEECCCCNNNNTTTTRRRR____SSSSIIIIZZZZEEEE
  221.                  Returns the size of the integer needed to read the cycle
  222.                  counter.  This is useful along with SGI_QUERY_CYCLECNTR to
  223.                  write machine independent code to read the free running
  224.                  hardware counter.  On some machines the value needs to be
  225.                  read into a 32 bit integer, and on others the cycle counter
  226.                  needs to be read into a 64 bit integer.
  227.  
  228.      SSSSGGGGIIII____QQQQUUUUEEEERRRRYYYY____CCCCYYYYCCCCLLLLEEEECCCCNNNNTTTTRRRR
  229.                  It is best to use the clock_gettime(2) interface with the
  230.                  CLOCK_SGI_CYCLE clock instead of mapping the counter
  231.                  yourself.  This is a much more portable solution.  That said,
  232.                  this syssgi option returns information about the free running
  233.                  hardware counter on systems that support a high resolution
  234.                  timer.  Upon successful completion, an address for the
  235.                  counter is returned.  The size of the integer needed to hold
  236.                  the count can be found using the SGI_CYCLECNTR_SIZE syssgi
  237.                  call.
  238.  
  239.                  On machines with 64-bit counters it can either be read with
  240.                  two separate 32-bit accesses (one at the returned address,
  241.                  and the other at the returned address plus four), or with a
  242.                  single 64-bit "long long" access in MIPS3 or MIPS4
  243.                  applications.
  244.  
  245.                  The address must be mapped read-only into the user process
  246.                  space via the _m_m_a_p(2) system call into ////ddddeeeevvvv////mmmmmmmmeeeemmmm before any
  247.                  access can be made.  Not all systems return page aligned
  248.                  addresses, so the address must be masked to be page aligned,
  249.                  and the offset added back to the returned mmap address, in
  250.                  order for code to work on all systems, so typically you would
  251.                  see code like this (ignoring error checking):
  252.  
  253.             #include <stddef.h>
  254.             #include <sys/types.h>
  255.             #include <fcntl.h>
  256.             #include <sys/mman.h>
  257.             #include <sys/syssgi.h>
  258.  
  259.  
  260.  
  261.                                                                         PPPPaaaaggggeeee 4444
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  269.  
  270.  
  271.  
  272.             #if CYCLE_COUNTER_IS_64BIT
  273.             typedef unsigned long long iotimer_t;
  274.             #else
  275.             typedef unsigned int iotimer_t;
  276.             #endif
  277.             __psunsigned_t phys_addr, raddr;
  278.             unsigned int cycleval;
  279.             volatile iotimer_t counter_value, *iotimer_addr;
  280.             int fd, poffmask;
  281.  
  282.             poffmask = getpagesize() - 1;
  283.             phys_addr = syssgi(SGI_QUERY_CYCLECNTR, &cycleval);
  284.             raddr = phys_addr & ~poffmask;
  285.             fd = open("/dev/mmem", O_RDONLY);
  286.             iotimer_addr = (volatile iotimer_t *)mmap(0, poffmask, PROT_READ,
  287.                  MAP_PRIVATE, fd, (off_t)raddr);
  288.             iotimer_addr = (iotimer_t *)((__psunsigned_t)iotimer_addr +
  289.                  (phys_addr & poffmask));
  290.             counter_value = *iotimer_addr;
  291.  
  292.        For the Challenge/ONYX and OCTANE families 64-bit counter, define
  293.        CYCLE_COUNTER_IS_64BIT.  Sixty-four bit (MIPS 3, MIPS 4) applications
  294.        may simply use the example above with CYCLE_COUNTER_IS_64BIT defined.
  295.        Thirty-two bit applications need to read the halves separately and
  296.        check for wrap-around.  Pass iotimer_addr and two unsigned int pointers
  297.        to the following routine:
  298.  
  299.             void read_time(volatile unsigned *iotimer_addr,
  300.                            unsigned *high, unsigned *low)
  301.              {
  302.                 while (1) {
  303.                     *high = *iotimer_addr;
  304.                     *low = *(iotimer_addr + 1);
  305.                     if (*high == *iotimer_addr) {
  306.                         return;
  307.                     }
  308.                 }
  309.              }
  310.  
  311.        This will put the top and bottom 32 bits of the time into the memory
  312.        pointed to by high and low, respectively.  If you only need 32-bit
  313.        precision, you may use the original example but replace the
  314.        counter_value assignment with
  315.  
  316.             counter_value = *(iotimer_addr + 1);
  317.  
  318.  
  319.  
  320.      SSSSGGGGIIII____SSSSEEEETTTTTTTTIIIIMMMMEEEETTTTRRRRIIIIMMMM
  321.                  changes the value of timetrim from the initial value
  322.                  configured in ////vvvvaaaarrrr////ssssyyyyssssggggeeeennnn////mmmmttttuuuunnnneeee////kkkkeeeerrrrnnnneeeellll (see _l_b_o_o_t(1M) and
  323.                  _a_d_j_t_i_m_e(2)).  The argument _a_r_g_1 is interpreted as an integer,
  324.  
  325.  
  326.  
  327.                                                                         PPPPaaaaggggeeee 5555
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  335.  
  336.  
  337.  
  338.                  which gives the new value of timetrim.
  339.  
  340.      SSSSGGGGIIII____GGGGEEEETTTTTTTTIIIIMMMMEEEETTTTRRRRIIIIMMMM
  341.                  obtains the current value of timetrim.  The argument _a_r_g_1
  342.                  must be a pointer to an integer, into which the timetrim
  343.                  value is stored.
  344.  
  345.      SSSSGGGGIIII____SSSSEEEETTTT____AAAAUUUUTTTTOOOOPPPPWWWWRRRROOOONNNN
  346.                  Is used to set the time at which the system will
  347.                  automatically power on (if it is powered off at that time).
  348.                  If the system is not powered off at that time (hasn't yet
  349.                  been shutdown and powered off), the call has no effect.
  350.                  Rebooting the system clears the value.  This is currently
  351.                  implemented only on OCTANE, Indy, Indigo and Challenge M
  352.                  systems.  The 3rd argument is a time_t whose value is the
  353.                  time in seconds from 1 Jan 1970 midnight GMT at which to turn
  354.                  the system on.  Also see the _w_a_k_e_u_p_a_t(1M) man page.  See the
  355.                  ENOPKG description below for systems not implementing this
  356.                  function.
  357.  
  358.      SSSSGGGGIIII____IIIIOOOOPPPPRRRROOOOBBBBEEEE
  359.      SSSSGGGGIIII____CCCCOOOONNNNFFFFIIIIGGGG  These are used by _l_b_o_o_t(1M) to determine the system
  360.                  configuration.
  361.  
  362.      SSSSGGGGIIII____MMMMCCCCOOOONNNNFFFFIIIIGGGG Is used by _l_b_o_o_t(1M) and _m_l(1M) to load, register, unload,
  363.                  unregister and list dynamically loadable kernel modules.
  364.                  This is subject to change and should not be called directly
  365.                  by applications.
  366.  
  367.      SSSSGGGGIIII____TTTTOOOOSSSSSSSSTTTTSSSSAAAAVVVVEEEE
  368.                  Used by runtime linkers to remove any saved text address
  369.                  spaces.
  370.  
  371.      SSSSGGGGIIII____GGGGEEEETTTT____UUUUSSSSTTTT This interface is used to implement various _l_i_b_d_m_e_d_i_a
  372.                  functions.  It is subject to change and should not be called
  373.                  directly by applications.
  374.  
  375.      SSSSGGGGIIII____SSSSEEEETTTT____FFFFPPPP____PPPPRRRREEEECCCCIIIISSSSEEEE
  376.                  Modifies floating point exception mode for the current
  377.                  process.  This is only meaningful on processors that support
  378.                  multiple modes.  On these processors, the default mode is
  379.                  usually performance mode (also called imprecise exception
  380.                  mode) and non-sequential memory (nsmm) mode.  On all other
  381.                  processors, the default is precise exception and sequential
  382.                  (smm) mode.
  383.  
  384.                  _a_r_g_1 should be non-zero in order to enable precise exception
  385.                  mode.  A value of zero will disable precise exception mode
  386.                  thereby enabling performance mode.
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.                                                                         PPPPaaaaggggeeee 6666
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  401.  
  402.  
  403.  
  404.                  In precise exception mode, all floating point
  405.                  exceptions/interrupts are reported on the instruction that
  406.                  caused the exception, so floating point signal handlers can
  407.                  clean up the FP state and continue execution.  In performance
  408.                  mode, floating point interrupts are asynchronous and the
  409.                  reported program counter is meaningless.  Precise mode is
  410.                  provided as a means of debugging processes and/or backward
  411.                  compatibility for programs that have knowledge of the FP
  412.                  state.  It causes significant performance degradation.
  413.  
  414.                  Currently this call only has an affect on machines with an
  415.                  R8000 processor since that is the only processor which
  416.                  supports this dual execution mode.
  417.  
  418.      SSSSGGGGIIII____GGGGEEEETTTT____FFFFPPPP____PPPPRRRREEEECCCCIIIISSSSEEEE
  419.                  Returns the floating point exception mode for the current
  420.                  process.  A zero value indicates that precise exception mode
  421.                  is disabled.
  422.  
  423.      SSSSGGGGIIII____FFFFPPPP____IIIIMMMMPPPPRRRREEEECCCCIIIISSSSEEEE____SSSSUUUUPPPPPPPP
  424.                  Returns non-zero if the current processor supports imprecise
  425.                  exceptions for floating point instructions.
  426.  
  427.      SSSSGGGGIIII____SSSSEEEETTTT____CCCCOOOONNNNFFFFIIIIGGGG____SSSSMMMMMMMM
  428.                  Modifies the memory model for floating point instructions for
  429.                  the current process.  Non-sequential memory access mode
  430.                  (turned on by default on processors that support it) allows
  431.                  the processor to do floating point and integer memory
  432.                  operations out of order, thus possibly providing better
  433.                  performance.
  434.  
  435.      SSSSGGGGIIII____GGGGEEEETTTT____CCCCOOOONNNNFFFFIIIIGGGG____SSSSMMMMMMMM
  436.                  Returns non-zero if the current process is in sequential
  437.                  memory mode.
  438.  
  439.      SSSSGGGGIIII____CCCCOOOONNNNFFFFIIIIGGGG____NNNNSSSSMMMMMMMM____SSSSUUUUPPPPPPPP
  440.                  Returns non-zero if the current processor supports non-
  441.                  sequential memory operations.
  442.  
  443.      SSSSGGGGIIII____SSSSEEEETTTT____FFFFPPPP____PPPPRRRREEEESSSSEEEERRRRVVVVEEEE
  444.                  Forces floating point state information (precise/imprecise
  445.                  exception mode as well as sequential/non-sequential memory
  446.                  mode) to be preserved across _e_x_e_c(2) system calls.
  447.  
  448.      SSSSGGGGIIII____FFFFSSSS____IIIINNNNUUUUMMMMBBBBEEEERRRRSSSS
  449.                  This interface is used to extract a list of valid inode
  450.                  numbers from a filesystem.  It is intended to be called
  451.                  iteratively, to obtain the entire set of inodes.  Currently
  452.                  the only filesystem type supporting this operation is the XFS
  453.                  filesystem.  _a_r_g_1 is a file descriptor either for the block
  454.                  or character device containing the filesystem of interest (it
  455.                  must be mounted) or for an open file in the filesystem of
  456.  
  457.  
  458.  
  459.                                                                         PPPPaaaaggggeeee 7777
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  467.  
  468.  
  469.  
  470.                  interest.  _a_r_g_2 is a pointer to a variable of type _iiii_nnnn_oooo_6666_4444______tttt
  471.                  containing the last inode returned, initially it should be 0.
  472.                  _a_r_g_3 is the size of the array of structures specified by
  473.                  _a_r_g_4.  _a_r_g_4 is the address of an array of structures, of type
  474.                  _xxxx_ffff_ssss______iiii_nnnn_oooo_gggg_rrrr_pppp______tttt (definition found in <sys/fs/xfs_itable.h>).
  475.                  The structure has the following elements:  _xxxx_iiii______ssss_tttt_aaaa_rrrr_tttt_iiii_nnnn_oooo
  476.                  (starting inode number), _xxxx_iiii______aaaa_llll_llll_oooo_cccc_cccc_oooo_uuuu_nnnn_tttt (count of bits set in
  477.                  _xxxx_iiii______aaaa_llll_llll_oooo_cccc_mmmm_aaaa_ssss_kkkk), and _xxxx_iiii______aaaa_llll_llll_oooo_cccc_mmmm_aaaa_ssss_kkkk (mask of allocated inodes in
  478.                  this group).  The bitmask is 64 bits long, and the least
  479.                  significant bit corresponds to inode _xxxx_iiii______ssss_tttt_aaaa_rrrr_tttt_iiii_nnnn_oooo.  Each bit
  480.                  is set if the corresponding inode is in use.  _a_r_g_5 is a
  481.                  pointer to a count of returned values, filled in by the call.
  482.                  A _c_o_u_n_t value of 0 means that the inode table has been
  483.                  exhausted.
  484.  
  485.      SSSSGGGGIIII____FFFFSSSS____BBBBUUUULLLLKKKKSSSSTTTTAAAATTTT
  486.                  This interface is used to extract inode information (stat
  487.                  information) "in bulk" from a filesystem.  It is intended to
  488.                  be called iteratively, to obtain information about the entire
  489.                  set of inodes in a filesystem.  Currently the only filesystem
  490.                  type supporting this operation is the XFS filesystem.  _a_r_g_1
  491.                  is a file descriptor either for the block or character device
  492.                  containing the filesystem of interest (it must be mounted) or
  493.                  for an open file in the filesystem of interest.  _a_r_g_2 is a
  494.                  pointer to a variable of type _iiii_nnnn_oooo_6666_4444______tttt containing the last
  495.                  inode returned, initially it should be 0.  _a_r_g_3 is the size
  496.                  of the array of structures specified by _a_r_g_4.  _a_r_g_4 is the
  497.                  address of an array of structures, of type _xxxx_ffff_ssss______bbbb_ssss_tttt_aaaa_tttt______tttt
  498.                  (definition found in <sys/fs/xfs_itable.h>).  Many of the
  499.                  elements in the structure are the same as for the _s_t_a_t
  500.                  structure.  The structure has the following elements:  _bbbb_ssss______iiii_nnnn_oooo
  501.                  (inode number), _bbbb_ssss______mmmm_oooo_dddd_eeee (type and mode), _bbbb_ssss______nnnn_llll_iiii_nnnn_kkkk (number of
  502.                  links), _bbbb_ssss______uuuu_iiii_dddd (user id), _bbbb_ssss______gggg_iiii_dddd (group id), _bbbb_ssss______rrrr_dddd_eeee_vvvv (device
  503.                  value), _bbbb_ssss______bbbb_llll_kkkk_ssss_iiii_zzzz_eeee (block size of the filesystem), _bbbb_ssss______ssss_iiii_zzzz_eeee
  504.                  (file size in bytes), _bbbb_ssss______aaaa_tttt_iiii_mmmm_eeee (access time), _bbbb_ssss______mmmm_tttt_iiii_mmmm_eeee
  505.                  (modify time), _bbbb_ssss______cccc_tttt_iiii_mmmm_eeee (inode change time), _bbbb_ssss______bbbb_llll_oooo_cccc_kkkk_ssss
  506.                  (number of blocks used by the file), _bbbb_ssss______xxxx_ffff_llll_aaaa_gggg_ssss (extended
  507.                  flags), _bbbb_ssss______eeee_xxxx_tttt_ssss_iiii_zzzz_eeee (extent size), _bbbb_ssss______eeee_xxxx_tttt_eeee_nnnn_tttt_ssss (number of
  508.                  extents), _bbbb_ssss______gggg_eeee_nnnn (generation count), _bbbb_ssss______pppp_rrrr_oooo_jjjj_iiii_dddd (project id),
  509.                  _bbbb_ssss______dddd_mmmm_eeee_vvvv_mmmm_aaaa_ssss_kkkk (DMIG event mask), _bbbb_ssss______dddd_mmmm_ssss_tttt_aaaa_tttt_eeee (DMIG state
  510.                  information), and _bbbb_ssss______aaaa_eeee_xxxx_tttt_eeee_nnnn_tttt_ssss (attribute extent count).  _a_r_g_5
  511.                  is a pointer to a count of returned values, filled in by the
  512.                  call.  A _c_o_u_n_t value of 0 means that the inode table has been
  513.                  exhausted.
  514.  
  515.      SSSSGGGGIIII____FFFFSSSS____BBBBUUUULLLLKKKKSSSSTTTTAAAATTTT____SSSSIIIINNNNGGGGLLLLEEEE
  516.                  This interface is a variant of the SSSSGGGGIIII____FFFFSSSS____BBBBUUUULLLLKKKKSSSSTTTTAAAATTTT interface,
  517.                  used to obtain information about a single inode.  _a_r_g_1 is a
  518.                  file descriptor either for the block or character device
  519.                  containing the filesystem of interest (it must be mounted) or
  520.                  for an open file in the filesystem of interest.  _a_r_g_2 is a
  521.                  pointer to a variable of type _iiii_nnnn_oooo_6666_4444______tttt containing the inode
  522.  
  523.  
  524.  
  525.                                                                         PPPPaaaaggggeeee 8888
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  533.  
  534.  
  535.  
  536.                  number of interest.  _a_r_g_3 is the address of a structure, of
  537.                  type _xxxx_ffff_ssss______bbbb_ssss_tttt_aaaa_tttt______tttt (definition found in <sys/fs/xfs_itable.h>).
  538.                  An error is returned if the inode number is invalid.
  539.  
  540.      SSSSGGGGIIII____XXXXFFFFSSSS____FFFFSSSSOOOOPPPPEEEERRRRAAAATTTTIIIIOOOONNNNSSSS
  541.                  This interface is used to implement various filesystem
  542.                  operations on XFS filesystems.  There are several sub-
  543.                  operations implemented.  See the header file
  544.                  <sys/fs/xfs_fsops.h> for further information.  _a_r_g_1 is a file
  545.                  descriptor either for the block or character device
  546.                  containing the filesystem of interest (it must be mounted) or
  547.                  for an open file in the filesystem of interest.  _a_r_g_2 is the
  548.                  operation code, one of XXXXFFFFSSSS____FFFFSSSS____GGGGEEEEOOOOMMMMEEEETTTTRRRRYYYY, XXXXFFFFSSSS____FFFFSSSS____CCCCOOOOUUUUNNNNTTTTSSSS,
  549.                  XXXXFFFFSSSS____GGGGRRRROOOOWWWWFFFFSSSS____DDDDAAAATTTTAAAA, XXXXFFFFSSSS____GGGGRRRROOOOWWWWFFFFSSSS____LLLLOOOOGGGG, or XXXXFFFFSSSS____GGGGRRRROOOOWWWWFFFFSSSS____RRRRTTTT.  _a_r_g_3 is a
  550.                  pointer to the input structure, of a type determined by the
  551.                  operation code; it may be null.  _a_r_g_4 is a pointer to the
  552.                  output structure, of a type determined by the operation code;
  553.                  it may be null.  For XXXXFFFFSSSS____FFFFSSSS____GGGGEEEEOOOOMMMMEEEETTTTRRRRYYYY (get filesystem mkfs-
  554.                  time information), the output structure is _xxxx_ffff_ssss______ffff_ssss_oooo_pppp______gggg_eeee_oooo_mmmm______tttt.
  555.                  For XXXXFFFFSSSS____FFFFSSSS____CCCCOOOOUUUUNNNNTTTTSSSS (get filesystem dynamic global
  556.                  information), the output structure is _xxxx_ffff_ssss______ffff_ssss_oooo_pppp______cccc_oooo_uuuu_nnnn_tttt_ssss______tttt.  The
  557.                  XXXXFFFFSSSS____GGGGRRRROOOOWWWWFFFFSSSS____............  operations are used to implement the
  558.                  _x_f_s__g_r_o_w_f_s(1M) command, and are not described further.  Only
  559.                  the superuser may call functions that modify data
  560.                  (XFS_GROWFS_DATA, XFS_GROWFS_LOG, XFS_GROWFS_RT, and
  561.                  XFS_SET_RESBLKS).
  562.  
  563.      SSSSGGGGIIII____PPPPAAAATTTTHHHH____TTTTOOOO____HHHHAAAANNNNDDDDLLLLEEEE
  564.      SSSSGGGGIIII____PPPPAAAATTTTHHHH____TTTTOOOO____FFFFSSSSHHHHAAAANNNNDDDDLLLLEEEE
  565.      SSSSGGGGIIII____FFFFDDDD____TTTTOOOO____HHHHAAAANNNNDDDDLLLLEEEE
  566.      SSSSGGGGIIII____OOOOPPPPEEEENNNN____BBBBYYYY____HHHHAAAANNNNDDDDLLLLEEEE
  567.      SSSSGGGGIIII____RRRREEEEAAAADDDDLLLLIIIINNNNKKKK____BBBBYYYY____HHHHAAAANNNNDDDDLLLLEEEE
  568.      SSSSGGGGIIII____AAAATTTTTTTTRRRR____LLLLIIIISSSSTTTT____BBBBYYYY____HHHHAAAANNNNDDDDLLLLEEEE
  569.      SSSSGGGGIIII____AAAATTTTTTTTRRRR____MMMMUUUULLLLTTTTIIII____BBBBYYYY____HHHHAAAANNNNDDDDLLLLEEEE
  570.      SSSSGGGGIIII____FFFFSSSSSSSSEEEETTTTDDDDMMMM____BBBBYYYY____HHHHAAAANNNNDDDDLLLLEEEE
  571.                  These are all interfaces that are used to implement various
  572.                  _l_i_b_d_m functions.  The only filesystem that supports these
  573.                  operations is XFS.  They are all subject to change and should
  574.                  not be called directly by applications.
  575.  
  576.      SSSSGGGGIIII____EEEENNNNUUUUMMMMAAAASSSSHHHHSSSS
  577.      SSSSGGGGIIII____GGGGEEEETTTTAAAARRRRSSSSEEEESSSSSSSS
  578.      SSSSGGGGIIII____GGGGEEEETTTTAAAASSSSMMMMAAAACCCCHHHHIIIIDDDD
  579.      SSSSGGGGIIII____PPPPIIIIDDDDSSSSIIIINNNNAAAASSSSHHHH
  580.      SSSSGGGGIIII____SSSSEEEETTTTAAAASSSSMMMMAAAACCCCHHHHIIIIDDDD
  581.                  These are all interfaces that are used to implement various
  582.                  _l_i_b_a_r_r_a_y functions.  They are all subject to change and
  583.                  should not be used directly by applications.
  584.  
  585.      SSSSGGGGIIII____AAAACCCCLLLL____GGGGEEEETTTT
  586.      SSSSGGGGIIII____AAAACCCCLLLL____SSSSEEEETTTT
  587.      SSSSGGGGIIII____AAAALLLLLLLLOOOOCCCCSSSSHHHHAAAARRRREEEENNNNAAAA
  588.  
  589.  
  590.  
  591.                                                                         PPPPaaaaggggeeee 9999
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  599.  
  600.  
  601.  
  602.      SSSSGGGGIIII____BBBBTTTTOOOOOOOOLLLLGGGGEEEETTTT
  603.      SSSSGGGGIIII____BBBBTTTTOOOOOOOOLLLLRRRREEEEIIIINNNNIIIITTTT
  604.      SSSSGGGGIIII____BBBBTTTTOOOOOOOOLLLLSSSSIIIIZZZZEEEE
  605.      SSSSGGGGIIII____CCCCAAAACCCCHHHHEEEEFFFFSSSS____SSSSYYYYSSSS
  606.      SSSSGGGGIIII____CCCCAAAAPPPP____GGGGEEEETTTT
  607.      SSSSGGGGIIII____CCCCAAAAPPPP____SSSSEEEETTTT
  608.      SSSSGGGGIIII____CCCCKKKKPPPPTTTT____SSSSYYYYSSSS
  609.      SSSSGGGGIIII____CCCCOOOONNNNSSSSTTTT
  610.      SSSSGGGGIIII____DDDDBBBBAAAA____CCCCOOOONNNNFFFFIIIIGGGG
  611.      SSSSGGGGIIII____DDDDYYYYIIIIEEEELLLLDDDD
  612.      SSSSGGGGIIII____EEEELLLLFFFFMMMMAAAAPPPP
  613.      SSSSGGGGIIII____EEEERRRRRRRROOOORRRR____FFFFOOOORRRRCCCCEEEE
  614.      SSSSGGGGIIII____EEEEVVVVEEEENNNNTTTTCCCCTTTTRRRR
  615.      SSSSGGGGIIII____FFFFOOOO____DDDDUUUUMMMMPPPP
  616.      SSSSGGGGIIII____FFFFOOOO____SSSSWWWWIIIITTTTCCCCHHHH
  617.      SSSSGGGGIIII____GGGGEEEETTTTGGGGRRRRPPPPPPPPIIIIDDDD
  618.      SSSSGGGGIIII____GGGGEEEETTTTSSSSEEEESSSSPPPPIIIIDDDD
  619.      SSSSGGGGIIII____GGGGEEEETTTTVVVVPPPPIIIIDDDD
  620.      SSSSGGGGIIII____GGGGEEEETTTT____CCCCOOOONNNNTTTTEEEEXXXXTTTT____IIIINNNNFFFFOOOO
  621.      SSSSGGGGIIII____GGGGEEEETTTT____CCCCOOOONNNNTTTTEEEEXXXXTTTT____NNNNAAAAMMMMEEEE
  622.      SSSSGGGGIIII____GGGGEEEETTTT____DDDDIIIISSSSMMMMIIIISSSSSSSSEEEEDDDD____EEEEXXXXCCCC____CCCCNNNNTTTT
  623.      SSSSGGGGIIII____GGGGEEEETTTT____EEEEVVVVCCCCOOOONNNNFFFF
  624.      SSSSGGGGIIII____GGGGRRRRIIIIOOOO
  625.      SSSSGGGGIIII____IIIIOOOO____SSSSHHHHOOOOWWWW____AAAAUUUUXXXX____IIIINNNNFFFFOOOO
  626.      SSSSGGGGIIII____JJJJOOOOIIIINNNNAAAARRRRRRRRAAAAYYYYSSSSEEEESSSSSSSS
  627.      SSSSGGGGIIII____KKKKAAAAIIIIOOOO____RRRREEEEAAAADDDD
  628.      SSSSGGGGIIII____KKKKAAAAIIIIOOOO____SSSSTTTTAAAATTTTSSSS
  629.      SSSSGGGGIIII____KKKKAAAAIIIIOOOO____SSSSUUUUSSSSPPPPEEEENNNNDDDD
  630.      SSSSGGGGIIII____KKKKAAAAIIIIOOOO____UUUUSSSSEEEERRRRIIIINNNNIIIITTTT
  631.      SSSSGGGGIIII____KKKKAAAAIIIIOOOO____WWWWRRRRIIIITTTTEEEE
  632.      SSSSGGGGIIII____KKKKTTTTHHHHRRRREEEEAAAADDDD
  633.      SSSSGGGGIIII____LLLLOOOOCCCCKKKKDDDDSSSSYYYYSSSS
  634.      SSSSGGGGIIII____MMMMAAAACCCC____GGGGEEEETTTT
  635.      SSSSGGGGIIII____MMMMAAAACCCC____SSSSEEEETTTT
  636.      SSSSGGGGIIII____MMMMEEEEMMMMPPPPRRRROOOOFFFF____CCCCLLLLEEEEAAAARRRRAAAALLLLLLLL
  637.      SSSSGGGGIIII____MMMMEEEEMMMMPPPPRRRROOOOFFFF____GGGGEEEETTTT
  638.      SSSSGGGGIIII____MMMMEEEEMMMMPPPPRRRROOOOFFFF____SSSSTTTTAAAARRRRTTTT
  639.      SSSSGGGGIIII____MMMMEEEEMMMMPPPPRRRROOOOFFFF____SSSSTTTTOOOOPPPP
  640.      SSSSGGGGIIII____MMMMIIIINNNNRRRRSSSSSSSS
  641.      SSSSGGGGIIII____MMMMOOOODDDDUUUULLLLEEEE____IIIINNNNFFFFOOOO
  642.      SSSSGGGGIIII____NNNNFFFFSSSSNNNNOOOOTTTTIIIIFFFFYYYY
  643.      SSSSGGGGIIII____NNNNOOOOFFFFPPPPEEEE
  644.      SSSSGGGGIIII____NNNNUUUUMMMMAAAA____SSSSTTTTAAAATTTTSSSS____GGGGEEEETTTT
  645.      SSSSGGGGIIII____NNNNUUUUMMMMAAAA____TTTTEEEESSSSTTTTSSSS
  646.      SSSSGGGGIIII____NNNNUUUUMMMMAAAA____TTTTUUUUNNNNEEEE
  647.      SSSSGGGGIIII____NNNNUUUUMMMM____MMMMOOOODDDDUUUULLLLEEEESSSS
  648.      SSSSGGGGIIII____OOOOBBBBJJJJ____EEEEVVVVIIIICCCCTTTT
  649.      SSSSGGGGIIII____PPPPAAAARRRRTTTT____OOOOPPPPEEEERRRRAAAATTTTIIIIOOOONNNNSSSS
  650.      SSSSGGGGIIII____PPPPHHHHYYYYSSSSPPPP
  651.      SSSSGGGGIIII____PPPPMMMMOOOOCCCCTTTTLLLL
  652.      SSSSGGGGIIII____PPPPRRRRIIIIOOOO____QQQQUUUUEEEERRRRYYYY____BBBBWWWW
  653.      SSSSGGGGIIII____PPPPRRRROOOOCCCC____AAAATTTTTTTTRRRR____GGGGEEEETTTT
  654.  
  655.  
  656.  
  657.                                                                        PPPPaaaaggggeeee 11110000
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  665.  
  666.  
  667.  
  668.      SSSSGGGGIIII____PPPPRRRROOOOCCCC____AAAATTTTTTTTRRRR____SSSSEEEETTTT
  669.      SSSSGGGGIIII____RRRREEEEAAAADDDD____DDDDAAAANNNNGGGGIIIIDDDD
  670.      SSSSGGGGIIII____RRRREEEELLLLEEEEAAAASSSSEEEE____NNNNAAAAMMMMEEEE
  671.      SSSSGGGGIIII____RRRREEEEVVVVOOOOKKKKEEEE
  672.      SSSSGGGGIIII____RRRRTTTT____TTTTSSSSTTTTAAAAMMMMPPPP____AAAADDDDDDDDRRRR
  673.      SSSSGGGGIIII____RRRRTTTT____TTTTSSSSTTTTAAAAMMMMPPPP____CCCCRRRREEEEAAAATTTTEEEE
  674.      SSSSGGGGIIII____RRRRTTTT____TTTTSSSSTTTTAAAAMMMMPPPP____DDDDEEEELLLLEEEETTTTEEEE
  675.      SSSSGGGGIIII____RRRRTTTT____TTTTSSSSTTTTAAAAMMMMPPPP____EEEEOOOOBBBB____MMMMOOOODDDDEEEE
  676.      SSSSGGGGIIII____RRRRTTTT____TTTTSSSSTTTTAAAAMMMMPPPP____MMMMAAAASSSSKKKK
  677.      SSSSGGGGIIII____RRRRTTTT____TTTTSSSSTTTTAAAAMMMMPPPP____SSSSTTTTAAAARRRRTTTT
  678.      SSSSGGGGIIII____RRRRTTTT____TTTTSSSSTTTTAAAAMMMMPPPP____SSSSTTTTOOOOPPPP
  679.      SSSSGGGGIIII____RRRRTTTT____TTTTSSSSTTTTAAAAMMMMPPPP____UUUUPPPPDDDDAAAATTTTEEEE
  680.      SSSSGGGGIIII____RRRRTTTT____TTTTSSSSTTTTAAAAMMMMPPPP____WWWWAAAAIIIITTTT
  681.      SSSSGGGGIIII____SSSSBBBBEEEE____CCCCLLLLRRRR____IIIINNNNFFFFOOOO
  682.      SSSSGGGGIIII____SSSSBBBBEEEE____GGGGEEEETTTT____IIIINNNNFFFFOOOO
  683.      SSSSGGGGIIII____SSSSEEEETTTTVVVVPPPPIIIIDDDD
  684.      SSSSGGGGIIII____SSSSEEEETTTT____DDDDIIIISSSSMMMMIIIISSSSSSSSEEEEDDDD____EEEEXXXXCCCC____CCCCNNNNTTTT
  685.      SSSSGGGGIIII____SSSSIIIIGGGGAAAALLLLTTTTSSSSTTTTAAAACCCCKKKK
  686.      SSSSGGGGIIII____SSSSPPPPEEEECCCCUUUULLLLAAAATTTTIIIIVVVVEEEE____EEEEXXXXEEEECCCC
  687.      SSSSGGGGIIII____SSSSYYYYMMMMTTTTAAAABBBB
  688.      SSSSGGGGIIII____SSSSYYYYNNNNCCCCHHHH____CCCCAAAACCCCHHHHEEEE____HHHHAAAANNNNDDDDLLLLEEEERRRR
  689.      SSSSGGGGIIII____TTTTUUUUNNNNEEEE____SSSSEEEETTTT
  690.      SSSSGGGGIIII____UUUULLLLIIII
  691.      SSSSGGGGIIII____UUUUSSSSEEEE____FFFFPPPP____BBBBCCCCOOOOPPPPYYYY
  692.      SSSSGGGGIIII____XXXXLLLLVVVV____AAAATTTTTTTTRRRR____CCCCUUUURRRRSSSSOOOORRRR
  693.      SSSSGGGGIIII____XXXXLLLLVVVV____AAAATTTTTTTTRRRR____GGGGEEEETTTT
  694.      SSSSGGGGIIII____XXXXLLLLVVVV____AAAATTTTTTTTRRRR____SSSSEEEETTTT
  695.      SSSSGGGGIIII____XXXXLLLLVVVV____NNNNEEEEXXXXTTTT____RRRRQQQQSSSSTTTT
  696.      SSSSGGGGIIII____XXXXLLLLVVVV____SSSSEEEETTTT____TTTTAAAABBBB
  697.                  These are all interfaces that are used to implement various
  698.                  system library functions.  They are all subject to change and
  699.                  should not be called directly by applications.
  700.  
  701.      SSSSGGGGIIII____UUUUNNNNSSSSUUUUPPPPPPPPOOOORRRRTTTTEEEEDDDD____MMMMAAAAPPPP____RRRREEEESSSSEEEERRRRVVVVEEEEDDDD____RRRRAAAANNNNGGGGEEEE
  702.                  When _a_r_g_1 is 1 the reserved range from 0x30000000 to
  703.                  0x40000000 is disabled on all future calls to _mmmm_mmmm_aaaa_pppp(2) and
  704.                  _ssss_hhhh_mmmm_aaaa_tttt(2) made by the process or its children.  The effect
  705.                  this causes is as if _MMMM_AAAA_PPPP______SSSS_GGGG_IIII______AAAA_NNNN_YYYY_AAAA_DDDD_DDDD_RRRR or _SSSS_HHHH_MMMM______SSSS_GGGG_IIII______AAAA_NNNN_YYYY_AAAA_DDDD_DDDD_RRRR were
  706.                  used in all future _mmmm_mmmm_aaaa_pppp(2) and _ssss_hhhh_mmmm_aaaa_tttt(2) calls.  This option
  707.                  is part of the process state and is inherited across _ffff_oooo_rrrr_kkkk(2)
  708.                  and _eeee_xxxx_eeee_cccc(2) system calls.  The reserved range may be re-
  709.                  enabled at any point with this system call by specifying a
  710.                  value of 0 for _a_r_g_1.  See _ssss_gggg_iiii______uuuu_ssss_eeee______aaaa_nnnn_yyyy_aaaa_dddd_dddd_rrrr(1) for more
  711.                  information about the reserved range.
  712.  
  713.  
  714. EEEERRRRRRRROOOORRRRSSSS
  715.      The following error codes may be returned by _s_y_s_s_g_i:
  716.  
  717.      [EFAULT]    A buffer is referenced which is not in a valid part of the
  718.                  calling program's address space.
  719.  
  720.  
  721.  
  722.  
  723.                                                                        PPPPaaaaggggeeee 11111111
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730. ssssyyyyssssssssggggiiii((((2222))))                                                            ssssyyyyssssssssggggiiii((((2222))))
  731.  
  732.  
  733.  
  734.      [ENODEV]    Could not determine system ID for SSSSGGGGIIII____SSSSYYYYSSSSIIIIDDDD.
  735.  
  736.      [ESRCH]     Could not find given process for SSSSGGGGIIII____RRRRDDDDNNNNAAAAMMMMEEEE.
  737.  
  738.      [EPERM]     The effective user ID is not superuser.  SSSSGGGGIIII____TTTTUUUUNNNNEEEE and
  739.                  SSSSGGGGIIII____IIIIDDDDBBBBGGGG require superuser privilege.
  740.  
  741.      [EINVAL]    For SSSSGGGGIIII____TTTTUUUUNNNNEEEE, the first argument was not valid, or the tune
  742.                  structure contained invalid values.  For SSSSGGGGIIII____IIIINNNNVVVVEEEENNNNTTTT _a_r_g_1 was
  743.                  neither SSSSGGGGIIII____IIIINNNNVVVV____RRRREEEEAAAADDDD nor SSSSGGGGIIII____IIIINNNNVVVV____SSSSIIIIZZZZEEEEOOOOFFFF.  For SSSSGGGGIIII____SSSSEEEETTTTNNNNVVVVRRRRAAAAMMMM
  744.                  _a_r_g_1 is not valid nvram variable name.  For SSSSGGGGIIII____GGGGEEEETTTTNNNNVVVVRRRRAAAAMMMM _a_r_g_1
  745.                  is not valid IRIS PROM Monitor environment variable name.
  746.                  For SSSSGGGGIIII____FFFFSSSS____BBBBUUUULLLLKKKKSSSSTTTTAAAATTTT____SSSSIIIINNNNGGGGLLLLEEEE _a_r_g_2 does not refer to a valid
  747.                  inode number for this filesystem.
  748.  
  749.      [ENXIO]     SSSSGGGGIIII____SSSSEEEETTTTNNNNVVVVRRRRAAAAMMMM is not supported.
  750.  
  751.      [ENOPKG]    SSSSGGGGIIII____SSSSEEEETTTT____AAAAUUUUTTTTOOOOPPPPWWWWRRRROOOONNNN is not supported on this system.
  752.  
  753.      [ENOMEM]    The specified buffer was not large enough to hold the entire
  754.                  list of process ids returned by the SSSSGGGGIIII____PPPPIIIIDDDDSSSSIIIINNNNAAAASSSSHHHH function.
  755.  
  756. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  757.      ftimer(1), hinv(1), mpadmin(1), sgi_use_anyaddr(1).  adjtime(2),
  758.      clock_gettime(2), clock_settime(2), setitimer(2), sigaction(2),
  759.  
  760. DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
  761.      Upon successful completion, a command dependent value (default of zero)
  762.      is returned.  Otherwise, a value of -1 is returned and _e_r_r_n_o is set to
  763.      indicate the error.
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.  
  789.                                                                        PPPPaaaaggggeeee 11112222
  790.  
  791.  
  792.  
  793.